/*
*   Copyright Spectra, Inc. All Rights Reserved.
*/
package spectra.ee.web.kb.model;

/**
 * KB관련 클래스.
 *
 * @author kmhan
 */
public class Kb
{

    /** 지식ID. */
    private String kbId;

    /** 제목. */
    private String title;

    /** 첨부파일 수. */
    private int attachCount;

    /** 승인상태. (APNOT: 사용안함, APREQ: 승인요청, APEND: 승인완료, APREJ: 승인반려, APFWD: 승인전달, APCCL: 승인요청취소) */
    private String approvalStatus;

    /** 승인자ID. */
    private String approvalId;

    /** 통합관리여부. (Y : 상담지식/FAQ 통합관리함, N : 상담지식/FAQ 통합관리안함) */
    private String joinFlag;

    /** 등록자ID. */
    private String createdBy;

    /** 등록일자. */
    private String createdDate;

    /** 수정자ID. */
    private String updatedBy;

    /** 수정일자. */
    private String updatedDate;

    /** 서비스타입. (SVKNW: 상담지식, SVFAQ: FAQ, SVQNA: QnA, SVCHT: 채팅) */
    private String serviceType;

    /** 사용자정의TOPN순위. */
    private int userTopnOrder;

    /** 시스템정의TOPN 순위. */
    private int systemTopnOrder;

    /** 조회수. */
    private int hitCount;

    /** 유효기간시작일자. */
    private String fromValidDate;

    /** 유효기간만료일자. */
    private String toValidDate;

    /** 현재일자. */
    private String currentDate;

    /** 웹표시여부(Y:웹에서 보이기, N:웹에서 숨기기). */
    private String webviewFlag;

    /** 삭제여부. (Y:삭제, N:미삭제) */
    private String deleteFlag;

    /** 만족도총점. */
    private int totalFeedback;

    /** 만족도응답수. */
    private int feedbackCount;

    /** 별칭. */
    private String alias;

    /** 내용. */
    private String contents;

    /** 노드ID. */
    private String nodeId;

    /** 도메인ID. */
    private String domainId;

    /** 시작번호. */
    private int startNo;

    /** 마지막번호. */
    private int endNo;

    /** 한페이지 나오는 글 갯수. */
    private int rowsPerPage;

    /** 정렬. */
    private String orderBy;

    /** TopN타입. */
    private String topnType;

    /** 로그ID. */
    private String logId;

    /** 만족도. */
    private int feedback;

    /** 만족도코드ID. */
    private String feedbackCodeId;


    /**
     * 생성자.
     */
    public Kb () {}

    /**
     * 생성자.
     *
     * @param kbId 지식ID.
     * @param title 제목.
     * @param attachCount 첨부파일수.
     * @param approvalStatus 승인상태. (APNOT: 사용안함, APREQ: 승인요청, APEND: 승인완료, APREJ: 승인반려, APFWD: 승인전달, APCCL: 승인요청취소)
     * @param approvalId 승인자ID.
     * @param joinFlag 통합관리여부. (Y : 상담지식/FAQ 통합관리함, N : 상담지식/FAQ 통합관리안함).
     * @param createdBy 등록자ID.
     * @param createdDate 등록일자.
     * @param updatedBy 수정자ID.
     * @param updatedDate 수정일자.
     * @param serviceType 서비스타입.
     * @param userTopnOrder 사용자정의TOPN순위.
     * @param systemTopnOrder 시스템정의TOPN 순위.
     * @param hitCount 조회수.
     * @param fromValidDate 유효기간시작일자.
     * @param toValidDate 유효기간만료일자.
     * @param currentDate 현재일자.
     * @param webviewFlag 웹표시여부(Y:웹에서 보이기, N:웹에서 숨기기).
     * @param deleteFlag 삭제여부. (Y: 삭제, N: 미삭제)
     * @param totalFeedback 만족도총점.
     * @param feedbackCount 만족도응답수.
     * @param alias 별칭.
     * @param contents 내용.
     * @param feedback 만족도.
     * @param feedbackCodeId 만족도코드ID.
     */
    public Kb (String kbId, String title, int attachCount, String approvalStatus, String approvalId,
            String joinFlag, String createdBy, String createdDate, String updatedBy, String updatedDate,
            String serviceType, int userTopnOrder, int systemTopnOrder, int hitCount, String fromValidDate,
            String toValidDate, String currentDate, String webviewFlag, String deleteFlag, int totalFeedback,
            int feedbackCount, String alias, String contents, int feedback, String feedbackCodeId)
    {
        this.kbId = kbId;
        this.title = title;
        this.attachCount = attachCount;
        this.approvalStatus = approvalStatus;
        this.approvalId = approvalId;
        this.joinFlag = joinFlag;
        this.createdBy = createdBy;
        this.createdDate = createdDate;
        this.updatedBy = updatedBy;
        this.updatedDate = updatedDate;
        this.serviceType = serviceType;
        this.userTopnOrder = userTopnOrder;
        this.systemTopnOrder = systemTopnOrder;
        this.hitCount = hitCount;
        this.fromValidDate = fromValidDate;
        this.toValidDate = toValidDate;
        this.currentDate = currentDate;
        this.webviewFlag = webviewFlag;
        this.deleteFlag = deleteFlag;
        this.totalFeedback = totalFeedback;
        this.feedbackCount = feedbackCount;
        this.alias = alias;
        this.contents = contents;
        this.feedback = feedback;
        this.feedbackCodeId = feedbackCodeId;
    }

    /**
     * 지식Id를 설정한다.
     *
     * @param kbId 지식ID.
     */
    public void setKbId(String kbId)
    {
        this.kbId= kbId;
    }

    /**
     * 제목을 설정한다.
     *
     * @param title 제목.
     */
    public void setTitle(String title)
    {
        this.title= title;
    }

    /**
     * 첨부파일 수를 설정한다..
     *
     * @param attachCount 첨부파일 수.
     */
    public void setAttachCount(int attachCount)
    {
        this.attachCount= attachCount;
    }

    /**
     * 승인상태를 설정한다.
     *
     * @param approvalStatus 승인상태. (APNOT: 사용안함, APREQ: 승인요청, APEND: 승인완료, APREJ: 승인반려, APFWD: 승인전달, APCCL: 승인요청취소)
     */
    public void setApprovalStatus(String approvalStatus)
    {
        this.approvalStatus= approvalStatus;
    }

    /**
     * 승인자ID를 설정한다.
     *
     * @param approvalId 승인자ID.
     */
    public void setApprovalId(String approvalId)
    {
        this.approvalId= approvalId;
    }

    /**
     * 통합관리여부를 설정한다.
     *
     * @param joinFlag 통합관리여부(Y : 상담지식/FAQ 통합관리함, N : 상담지식/FAQ 통합관리안함).
     */
    public void setJoinFlag(String joinFlag)
    {
        this.joinFlag= joinFlag;
    }

    /**
     * 등록자ID를 설정한다.
     *
     * @param createdBy 등록자ID.
     */
    public void setCreatedBy(String createdBy)
    {
        this.createdBy= createdBy;
    }

    /**
     * 등록일자를 설정한다.
     *
     * @param createdDate 등록일자.
     */
    public void setCreatedDate(String createdDate)
    {
        this.createdDate= createdDate;
    }

    /**
     * 수정자ID를 설정한다.
     *
     * @param updatedBy 수정자ID.
     */
    public void setUpdatedBy(String updatedBy)
    {
        this.updatedBy= updatedBy;
    }

    /**
     * 수정일자를 설정한다.
     *
     * @param updatedDate 수정일자.
     */
    public void setUpdatedDate(String updatedDate)
    {
        this.updatedDate= updatedDate;
    }

    /**
     * 서비스타입을 설정한다.
     *
     * @param serviceType 서비스타입(SVKNW: 상담지식, SVFAQ: FAQ, SVQNA: QnA, SVCHT: 채팅).
     */
    public void setServiceType(String serviceType)
    {
        this.serviceType= serviceType;
    }

    /**
     * 사용자정의 TOPN순위를 설정한다.
     *
     * @param userTopnOrder 사용자정의 TOPN순위.
     */
    public void setUserTopnOrder(int userTopnOrder)
    {
        this.userTopnOrder= userTopnOrder;
    }

    /**
     * 시스템정의TOPN 순위를 설정한다.
     *
     * @param systemTopnOrder 시스템정의TOPN 순위.
     */
    public void setSystemTopnOrder(int systemTopnOrder)
    {
        this.systemTopnOrder= systemTopnOrder;
    }

    /**
     * 조회수를 설정한다.
     *
     * @param hitCount 조회수.
     */
    public void setHitCount(int hitCount)
    {
        this.hitCount= hitCount;
    }

    /**
     * 유효기간시작일자를 설정한다.
     *
     * @param fromValidDate 유효기간시작일자.
     */
    public void setFromValidDate(String fromValidDate)
    {
        this.fromValidDate= fromValidDate;
    }

    /**
     * 유효기간만료일자를 설정한다.
     *
     * @param toValidDate 유효기간만료일자.
     */
    public void setToValidDate(String toValidDate)
    {
        this.toValidDate = toValidDate;
    }


    /**
     * 현재일자를 설정한다.
     *
     * @param currentDate 현재일자.
     */
    public void setCurrentDate(String currentDate)
    {
        this.currentDate = currentDate;
    }


    /**
     * 웹표시여부를 설정한다.
     *
     * @param webviewFlag 웹표시여부(Y:웹에서 보이기, N:웹에서 숨기기).
     */
    public void setWebviewFlag(String webviewFlag)
    {
        this.webviewFlag= webviewFlag;
    }


    /**
     * 삭제여부를 설정한다.
     *
     * @param deleteFlag 삭제여부. (Y: 삭제, N: 미삭제)
     */
    public void setDeleteFlag(String deleteFlag)
    {
        this.deleteFlag= deleteFlag;
    }


    /**
     * 만족도총점를 설정한다.
     *
     * @param totalFeedback 만족도총점.
     */
    public void setTotalFeedback(int totalFeedback)
    {
        this.totalFeedback= totalFeedback;
    }


    /**
     * 만족도응답수를 설정한다.
     *
     * @param feedbackCount 만족도응답수.
     */
    public void setFeedbackCount(int feedbackCount)
    {
        this.feedbackCount= feedbackCount;
    }


    /**
     * 별칭를 설정한다.
     *
     * @param alias 별칭.
     */
    public void setAlias(String alias)
    {
        this.alias= alias;
    }


    /**
     * 내용을 설정한다.
     *
     * @param contents 내용.
     */
    public void setContents(String contents)
    {
        this.contents = contents;
    }


    /**
     * 노드ID를 설정한다.
     *
     * @param nodeId 노드ID.
     */
    public void setNodeId(String nodeId)
    {
        this.nodeId = nodeId;
    }


    /**
     * 도메인ID를 설정한다.
     *
     * @param domainId 도메인ID.
     */
    public void setDomainId(String domainId)
    {
        this.domainId = domainId;
    }


    /**
     * 시작번호를 설정한다.
     *
     * @param startNo 시작번호.
     */
    public void setStartNo(int startNo)
    {
        this.startNo = startNo;
    }


    /**
     * 마지막번호를 설정한다.
     *
     * @param endNo 마지막번호.
     */
    public void setEndNo(int endNo)
    {
        this.endNo = endNo;
    }


    /**
     * 한페이지 나오는 글 갯수를 설정한다.
     *
     * @param rowsPerPage 한페이지 나오는 글 갯수.
     */
    public void setRowsPerPage(int rowsPerPage)
    {
        this.rowsPerPage = rowsPerPage;
    }


    /**
     * 정렬을 설정한다.
     *
     * @param orderBy 정렬.
     */
    public void setOrderBy(String orderBy)
    {
        this.orderBy = orderBy;
    }


    /**
     * TOPN타입을 설정한다.
     *
     * @param topnType TOPN타입.
     */
    public void setTopnType(String topnType)
    {
        this.topnType = topnType;
    }


    /**
     * 로그ID를 설정한다.
     *
     * @param logId 로그ID.
     */
    public void setLogId(String logId)
    {
        this.logId= logId;
    }


    /**
     * 만족도를 설정한다.
     *
     * @param feedback 만족도.
     */
    public void setFeedback(int feedback)
    {
        this.feedback= feedback;
    }

    /**
     * 만족도코드ID를 설정한다.
     *
     * @param feedbackCodeId 만족도코드ID.
     */
    public void setFeedbackCodeId(String feedbackCodeId)
    {
        this.feedbackCodeId= feedbackCodeId;
    }


    /**
     * 지식ID를 얻는다.
     *
     * @return 지식ID
     */
    public String getKbId()
    {
        return this.kbId;
    }


    /**
     * 제목을 얻는다.
     *
     * @return title 제목.
     */
    public String getTitle()
    {
        return this.title;
    }


    /**
     * 첨부파일 수를 얻는다.
     *
     * @return attachCount 첨부파일 수.
     */
    public int getAttachCount()
    {
        return this.attachCount;
    }


    /**
     * 승인상태를 얻는다.
     *
     * @return approvalStatus 승인상태. (APNOT: 사용안함, APREQ: 승인요청, APEND: 승인완료, APREJ: 승인반려, APFWD: 승인전달, APCCL: 승인요청취소).
     */
    public String getApprovalStatus()
    {
        return this.approvalStatus;
    }


    /**
     * 승인자ID를 얻는다.
     *
     * @return approvalId 승인자ID.
     */
    public String getApprovalId()
    {
        return this.approvalId;
    }


    /**
     * 통합관리여부를 얻는다.
     *
     * @return joinFlag 통합관리여부. (Y : 상담지식/FAQ 통합관리함, N : 상담지식/FAQ 통합관리안함).
     */
    public String getJoinFlag()
    {
        return this.joinFlag;
    }


    /**
     * 등록자ID를 얻는다.
     *
     * @return createdBy 등록자ID.
     */
    public String getCreatedBy()
    {
        return this.createdBy;
    }


    /**
     * 등록일자를 얻는다.
     *
     * @return createdDate 등록일자.
     */
    public String getCreatedDate()
    {
        return this.createdDate;
    }


    /**
     * 수정자ID를 얻는다.
     *
     * @return updatedBy 수정자ID.
     */
    public String getUpdatedBy()
    {
        return this.updatedBy;
    }

    /**
     * 수정일자를 얻는다.
     *
     * @return updatedDate 수정일자.
     */
    public String getUpdatedDate()
    {
        return this.updatedDate;
    }


    /**
     * 서비스타입를 얻는다.
     *
     * @return serviceType 서비스타입. (SVKNW: 상담지식, SVFAQ: FAQ, SVQNA: QnA, SVCHT: 채팅) .
     */
    public String getServiceType()
    {
        return this.serviceType;
    }


    /**
     * 사용자정의TOPN순위를 얻는다.
     *
     * @return userTopnOrder 사용자정의TOPN순위.
     */
    public int getUserTopnOrder()
    {
        return this.userTopnOrder;
    }


    /**
     * 시스템정의TOPN 순위를 얻는다.
     *
     * @return systemTopnOrder 시스템정의TOPN 순위.
     */
    public int getSystemTopnOrder()
    {
        return this.systemTopnOrder;
    }


    /**
     * 조회수를 얻는다.
     *
     * @return hitCount 조회수.
     */
    public int getHitCount()
    {
        return this.hitCount;
    }


    /**
     * 유효기간시작일자를 얻는다.
     *
     * @return fromValidDate 유효기간시작일자.
     */
    public String getFromValidDate()
    {
        return this.fromValidDate;
    }


    /**
     * 유효기간만료일자를 얻는다.
     *
     * @return toValidDate 유효기간만료일자.
     */
    public String getToValidDate()
    {
        return this.toValidDate;
    }


    /**
     * 현재일자를 얻는다.
     *
     * @return currentDate 현재일자.
     */
    public String getCurrentDate()
    {
        return this.currentDate;
    }


    /**
     * 웹표시여부를 얻는다.
     *
     * @return webviewFlag 웹표시여부(Y:웹에서 보이기, N:웹에서 숨기기).
     */
    public String getWebviewFlag()
    {
        return this.webviewFlag;
    }


    /**
     * 삭제여부를 얻는다.
     *
     * @return deleteFlag 삭제여부. (Y:삭제, N:미삭제).
     */
    public String getDeleteFlag()
    {
        return this.deleteFlag;
    }


    /**
     * 만족도총점를 얻는다.
     *
     * @return totalFeedback 만족도총점.
     */
    public int getTotalFeedback()
    {
        return this.totalFeedback;
    }

    /**
     * 만족도응답수를 얻는다.
     *
     * @return feedbackCount 만족도응답수.
     */
    public int getFeedbackCount()
    {
        return this.feedbackCount;
    }


    /**
     * 별칭를 얻는다.
     *
     * @return alias 별칭.
     */
    public String getAlias()
    {
        return this.alias;
    }


    /**
     * 내용을 얻는다.
     *
     * @return contents 내용.
     */
    public String getContents()
    {
        return this.contents;
    }


    /**
     * 노드ID를 얻는다.
     *
     * @return nodeId 노드ID.
     */
    public String getNodeId()
    {
        return this.nodeId;
    }


    /**
     * 도메인ID를 얻는다.
     *
     * @return domainId 도메인ID.
     */
    public String getDomainId()
    {
        return this.domainId;
    }


    /**
     * 시작번호를 얻는다.
     *
     * @return startNo 시작번호.
     */
    public int getStartNo()
    {
        return this.startNo;
    }


    /**
     * 마지막번호를 얻는다.
     *
     * @return endNo 마지막번호.
     */
    public int getEndNo()
    {
        return this.endNo;
    }


    /**
     * 한페이지 나오는 글 갯수를 얻는다.
     *
     * @return rowsPerPage 한페이지 나오는 글 갯수.
     */
    public int getRowsPerPage()
    {
        return this.rowsPerPage;
    }


    /**
    * 정렬을 얻는다.
    *
    * @return orderBy 정렬.
    */
    public String getOrderBy()
    {
        return this.orderBy;
    }


    /**
    * TOPN타입을 얻는다.
    *
    * @return topnType TOPN타입.
    */
    public String getTopnType()
    {
        return this.topnType;
    }


    /**
    * 로그ID를 얻는다.
    *
    * @return logId 로그ID.
    */
    public String getLogId()
    {
        return this.logId;
    }


    /**
    * 만족도를 얻는다.
    *
    * @return feedback 만족도.
    */
    public int getFeedback()
    {
        return this.feedback;
    }


    /**
    * 만족도코드ID를 얻는다.
    *
    * @return feedbackCodeId 만족도코드ID.
    */
    public String getFeedbackCodeId()
    {
        return this.feedbackCodeId;
    }
}